% \IGNORE{x} -- Comments out x
\newcommand{\IGNORE}[1]{}

% \TODO{x} -- Typesets x in bold and red
\newcommand{\TODO}[1]{{\color{red}\textbf{#1}}}

% \VarSubMbox{a}{b} -- produces the math symbol, $a_{b}$, where $b$ is typeset as plain text (not math)
\newcommand{\VarSubMbox}[2]{\ensuremath{{#1}_{\mbox{\tiny {#2}}}\xspace}}

% Single-core power
\newcommand{\PowerSC}{\VarSubMbox{P}{SC}}

% Multicore power
\newcommand{\PowerMC}{\VarSubMbox{P}{MC}}
\newcommand{\PowerBasic}{\VarSubMbox{P}{basic}}

% Frequency: plain, average, and max
\newcommand{\Freq}{\ensuremath{f}\xspace}
\newcommand{\AvgFreq}{\ensuremath{\bar{f}}\xspace}
\newcommand{\MaxFreq}{\ensuremath{f^+}\xspace}
\newcommand{\MinFreq}{\ensuremath{f_-}\xspace}

\newcommand{\MaxFreqSetting}{\ensuremath{\phi^+}\xspace}
\newcommand{\MinFreqSetting}{\ensuremath{\phi_-}\xspace}

% Disparity: any + variations
\newcommand{\Disparity}{\ensuremath{\Delta}\xspace}
\newcommand{\DisparityMaxAvg}{\ensuremath{\Delta^{\tiny +}}\xspace}
\newcommand{\DisparityAvgMin}{\ensuremath{\Delta_{\tiny -}}\xspace}
\newcommand{\DisparityMaxMin}{\ensuremath{\Delta^{\tiny +}_{\tiny -}}\xspace}
\newcommand{\Variance}{\ensuremath{\sigma^2}\xspace}
\newcommand{\StdDev}{\ensuremath{\sigma}\xspace}

% Number of cores
\newcommand{\NumCores}{\ensuremath{N}\xspace}

% \GHz{x} -- typesets, ``x GHz''
\newcommand{\GHz}[1]{{#1}\,GHz\xspace}

% Reference an equation as the first word of a sentence, e.g., ``\RefEquation{x} shows that ...''
\newcommand{\RefEquation}[1]{Equation\,\eqref{#1}\xspace}

% Reference an equation in the middle of a sentence, e.g., ``... as shown in \refeq{x}.''
\newcommand{\refeq}[1]{eq.\,\eqref{#1}\xspace}

% Reference a figure as the first word in a sentence, e.g., ``\RefFigure{x} shows that ...''
\newcommand{\RefFigure}[1]{Figure\,\ref{#1}\xspace}

% Reference a figure in the middle of a sentence, e.g., ``See \reffig{x} for details.''
\newcommand{\reffig}[1]{fig.\,\ref{#1}\xspace}

% Reference a algorithm as the first word in a sentence, e.g., ``\RefAlgorithm{x} shows that ...''
\newcommand{\RefAlgorithm}[1]{Algorithm\,\ref{#1}\xspace}

% Reference a algorithm in the middle of a sentence, e.g., ``See \refalg{x} for details.''
\newcommand{\refalg}[1]{alg.\,\ref{#1}\xspace}

% Reference a section as the first word of a sentence, e.g., ``\RefSection{x} shows how ...''
\newcommand{\RefSection}[1]{Section\,\ref{#1}\xspace}

% Reference a section in the middle of a sentence, e.g., ``See \refsec{x} for details.''
\newcommand{\refsec}[1]{\S\,\ref{#1}\xspace}

% Reference a table as the first word of a sentence, e.g., ``\RefTable{x} shows how ...''
\newcommand{\RefTable}[1]{Table\,\ref{#1}\xspace}

% Reference a table in the middle of a sentence, e.g., ``See \reftab{x} for details.''
\newcommand{\reftab}[1]{table\,\ref{#1}\xspace}

% The word, ``naive,'' with a proper umlaut over the ``i''
\newcommand{\Naive}{Na\"ive}
\newcommand{\naive}{na\"ive}

% Typeset code
\newcommand{\textcode}[1]{{\smaller \texttt{#1}}}

% eof
